package com.skywolf.chem.match.entity;

import com.baomidou.mybatisplus.annotation.TableName;

import java.time.LocalDateTime;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.skywolf.chem.common.sysconfig.pojo.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 赛事详情
 * </p>
 *
 * @author sj
 * @since 2021-09-24
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("match_info")
@ApiModel(value = "Info对象", description = "赛事详情")
public class Info extends BaseEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "赛事名称")
    private String matchName;

    @ApiModelProperty(value = "赛事类型名称")
    private String type;

    @ApiModelProperty(value = "关注基础量")
    private Integer concernCount;

    @ApiModelProperty(value = "三级联动地址 通过-拼接(省-市-区)")
    private String address;

    @ApiModelProperty(value = "省编号-ID")
    private long provinceId;

    @ApiModelProperty(value = "市编号-ID")
    private long cityId;

    @ApiModelProperty(value = "区编号-ID")
    private long areaId;

    @ApiModelProperty(value = "详细地址")
    private String addressDetail;

    @ApiModelProperty(value = "经度")
    private String longitude;

    @ApiModelProperty(value = "纬度")
    private String latitude;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "报名开始时间")
    private LocalDateTime applyStartTime;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "报名结束时间")
    private LocalDateTime applyEndTime;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "比赛开始时间")
    private LocalDateTime matchStartTime;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "比赛结束时间")
    private LocalDateTime matchEndTime;

    @ApiModelProperty(value = "活动图片地址")
    private String activityPicUrl;

    @ApiModelProperty(value = "赛事介绍图片地址")
    private String matchIntroduceUrl;

    @ApiModelProperty(value = "赛事状态 100->>待审核  101->>待发布  103->>审核未通过  104->>活动未开始   105->>进行中   106->>已结束")
    private Integer matchStatus;

    @ApiModelProperty(value = "审核意见")
    private String applyStr;

    @ApiModelProperty(value = "报名状态  201->>报名未开始    202->>报名进行中   203->>报名结束")
    private Integer applyStatus;

    @ApiModelProperty(value = "活动自定义标签")
    private String customTag;

    @ApiModelProperty(value = "活动级别")
    private String level;

    @ApiModelProperty(value = "场地类型")
    private String siteType;

    @ApiModelProperty(value = "是否置顶")
    private String stick;

    @ApiModelProperty(value = "活动用户自定义标签")
    private String applyUserCustomTag;

    @ApiModelProperty(value = "是否时职业赛事 0-非职业赛事 1-职业赛事")
    private Integer professional;

}
